package com.cskaoyan.service;

import com.cskaoyan.bean.BaseReq;
import com.cskaoyan.bean.Permission;
import com.cskaoyan.bean.Role;
import com.cskaoyan.bean.SystemPermission;
import com.cskaoyan.bean.role.bo.CreateRoleBo;
import com.cskaoyan.bean.role.bo.DeleteRoleBo;
import com.cskaoyan.bean.role.bo.UpdateRolePermissionBo;
import com.cskaoyan.bean.role.vo.CreateRoleVo;
import com.cskaoyan.bean.role.vo.RoleData;

import java.util.List;

public interface RoleService {
    List<Role> getRoles();

    RoleData getRoleList(BaseReq roleReq);

    CreateRoleVo createRole(CreateRoleBo bo);

    boolean deleteRole(DeleteRoleBo bo);

    int updateRole(Role role);

    boolean writeData(SystemPermission systemPermission);

    List<SystemPermission> getSystemPermissions();

    List<Permission> getRolePermissions(Integer roleId);

    int updateRolePermissions(UpdateRolePermissionBo bo);
}
